namespace XcoAppSpaces.Transport.Sockets.Auth.Contract
{
	public class SecuritySettings
	{
		public string Greeting { get; set; }
		public string AuthenticationKey { get; set; }
		public int ChallengeLength { get; set; }
		public int SecondsAfterInvalidConnectionIsClosed { get; set; }

		public int NumInvalidAttemptsForBlacklist { get; set; }
		public int SecondsAfterConnectionRemovedFromBlacklist { get; set; }
		public int SecondsAfterConnectionRemovedFromGraylist { get; set; }

		public SecuritySettings()
		{
			Greeting = "xcohello";
			AuthenticationKey = "xCo0!#";
			ChallengeLength = 10;
			SecondsAfterInvalidConnectionIsClosed = 10;
			NumInvalidAttemptsForBlacklist = 3;
			SecondsAfterConnectionRemovedFromGraylist = 300;
			SecondsAfterConnectionRemovedFromBlacklist = 3600;
		}
	}
}
